// VShadowVolume.h: interface for the VShadowVolume class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_VShadowVolume_H__D38083B8_3491_4DEC_A058_85F942769BC2__INCLUDED_)
#define AFX_VShadowVolume_H__D38083B8_3491_4DEC_A058_85F942769BC2__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <vector>

#pragma warning(disable : 4996)

struct VSHADOWVERTEX
{
    D3DXVECTOR3 p;
    D3DXVECTOR3 n;
};
struct MESHVERTEX 
{ 
	D3DXVECTOR3 pos;
	D3DXVECTOR3 faceNorm;
	FLOAT tu;
	FLOAT tv; 
};


struct SHADOWMESH
{
	int nComp;
	BYTE BoneComp[50];
    DWORD       m_dwNumVertices;
    DWORD       m_dwNumFaces;
	char name[50];
};
class VShadowVolume  
{
public:
	VShadowVolume();
	virtual ~VShadowVolume();
	BYTE* pFlags;
	WORD* pIndex;

public:
	int GetShadowMesh(char *str);
    VOID    Reset() {  }
   // int LoadShadowMesh(char *newfile, _PUREGEOM &mesh );
	int nshadow;
};

#endif // !defined(AFX_VShadowVolume_H__D38083B8_3491_4DEC_A058_85F942769BC2__INCLUDED_)
